package com.ssy.lingxi.purchase.entity;

import javax.persistence.*;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 请购单内部流转记录
 * @author wyx
 * @version 2.0.0
 * @date 2021-10-29
 */
@Entity
@Table(schema = "public", name = "pu_inner_history",
        indexes = {@Index(name = "pu_inner_history_order_id_idx", columnList = "orderId"), @Index(name = "pu_inner_history_member_id_idx", columnList = "memberId"), @Index(name = "pu_inner_history_role_id_idx", columnList = "roleId")})
public class PurchaseInnerHistory implements Serializable {
    private static final long serialVersionUID = -3599429927160942271L;

    /**
     * 主键Id
     */
    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pu_inner_history_seq")
    @SequenceGenerator(sequenceName = "pu_inner_history_seq", name = "pu_inner_history_seq", allocationSize = 1)
    private Long id;

    /**
     * 操作时间
     */
    @Column(columnDefinition = "timestamp")
    private LocalDateTime createTime;

    /**
     * 订单Id
     */
    @Column
    private Long orderId;

    /**
     * (供应、采购）会员Id
     */
    @Column
    private Long memberId;

    /**
     * (供应、采购）会员角色Id
     */
    @Column
    private Long roleId;

    /**
     * 操作人
     */
    @Column(columnDefinition = "varchar(50)")
    private String operator;

    /**
     * 部门
     */
    @Column(columnDefinition = "varchar(50)")
    private String department;

    /**
     * 职位
     */
    @Column(columnDefinition = "varchar(50)")
    private String jobTitle;

    /**
     * 操作
     */
    @Column(columnDefinition = "varchar(50)")
    private String operation;

    /**
     * 订单状态名称
     */
    @Column(columnDefinition = "varchar(50)")
    private String statusName;

    /**
     * 意见
     */
    @Column(columnDefinition = "varchar(200)")
    private String remark;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    public Long getMemberId() {
        return memberId;
    }

    public void setMemberId(Long memberId) {
        this.memberId = memberId;
    }

    public Long getRoleId() {
        return roleId;
    }

    public void setRoleId(Long roleId) {
        this.roleId = roleId;
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getJobTitle() {
        return jobTitle;
    }

    public void setJobTitle(String jobTitle) {
        this.jobTitle = jobTitle;
    }

    public String getOperation() {
        return operation;
    }

    public void setOperation(String operation) {
        this.operation = operation;
    }

    public String getStatusName() {
        return statusName;
    }

    public void setStatusName(String statusName) {
        this.statusName = statusName;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}
